A typical computer system includes a memory containing one or more applications that can be executed to perform various functions. The applications can provide a user interface, such as a graphical user interface (GUI), on a monitor and receive inputs such as mouse clicks and keyboard entries. The applications can receive a number of these inputs, such as selections of functions for the application to perform. For example, a user may select a function by using an input device, such as a mouse, to select a menu header on a toolbar to pull-down a menu listing various options, each representing a function. The user can select one of these options and cause the application to perform the function associated with the option.
Some applications allow the user to display a context menu that lists selectable options representing functions associated with the user's current status in the application. For example, a user can use a mouse to “right-click” and display a context menu, which is a temporary menu that allows users to select an option listed in the context menu. The options listed in the context menu can depend on where the user right-clicked on the GUI. If the user right-clicked on one type of data entered by the user, the context menu may list different options than if the user right-clicked on a second type of data entered by the user.
Applications may allow users to select a quick-button using an input device to cause the application to perform a function associated with the quick-button. Quick-buttons may be selectable buttons on a header or other area on a GUI that include icons representing the function associated with the quick-button. Typically, quick-buttons represent functions that are commonly selected by a user, such as for example, a “save,” “open,” or “print” button for document creation and manipulation applications.
Applications may also allow users to select functions using a keyboard. For example, users may select a function key, typically labeled F1, F2, etc., that corresponds to an application function. When the user inputs a function key the application performs the function corresponding to that function key. Correspondence between the function key and functions may be pre-set by the application or by a user.
Each function selected by a user and performed by the application may be a user action. The user can perform a workflow in an application that includes a series of user actions. Users often repeatedly perform similar, if not exact, workflows using an application. Since menus are often static on GUIs, the user may be required to repeatedly select a series of options using one or more selection methods. For example, the user may be required to select an option representing a function from a pull-down menu each time they wish to perform that function. In some applications, users may be required to select a pull-down menu and select a secondary menu within that pull-down menu to find the option representing the desired function. Repeating such steps increases the amount of time the user must spend performing the workflow and requires familiarity the user must possess with the location of the menu containing the option representing the desired function in a workflow.
Some applications have attempted to alleviate the time and familiarity with the application required to perform repeated functions. For example, some Microsoft® Windows operating systems provide a “Start Menu” in which one or more of the user's last used applications are listed in a convenient location for the user to access. Instead of finding the application again by looking through one or more secondary menus, the user can select the application as listed on the Start Menu. Such attempts, however, depend on the user's most recent selections and only provide the user with one option representing a function (i.e. opening an application) selectable in a convenient menu.